package com.pan.admin.module.loanProduct.service;

import com.pan.admin.module.loanProduct.entity.po.LoanProductProtocolPO;

import java.util.List;

/**
 * 产品协议Service接口
 *
 * @author ZJQ
 * @date 2025-01-02
 */
 public interface LoanProductProtocolService {

   /**
    * 校验修改产品权限
    *
    * @param id 产品信息主键
    * @return 结果
    */
   void checkDataScope(Long id);

    /**
     *
     *  功能描述: 平台配置-协议列表
     *  @author 周硕
     *  @param  loanProductId 平台id
     *  @return List
     */
    List<LoanProductProtocolPO> listLoanProductProtocol(Long loanProductId);

    /**
     *
     *  功能描述: 平台配置-配置协议-增删改查
     *  @author 周硕
     *  @param loanProductProtocolPO id 协议对应id
     *  @return int
     */
    int insertLoanProductProtocol(LoanProductProtocolPO loanProductProtocolPO);

    /**
     *
     *  功能描述: 平台配置-配置协议-增删改查
     *  @author 周硕
     *  @param loanProductProtocolPO 协议信息
     *  @return int
     */
    int updateLoanProductProtocol(LoanProductProtocolPO loanProductProtocolPO);

    /**
     *
     *  功能描述: 平台配置-配置协议-增删改查
     *  @author 周硕
     *  @param id id 协议对应id
     *  @return int
     */
    int deleteLoanProductProtocol(Long id);

    /**
     *
     *  功能描述: 平台配置-配置协议-增删改查
     *  @author 周硕
     *  @param  id id 协议对应id
     *  @return LoanProductProtocolPO
     */
    LoanProductProtocolPO getLoanProductProtocol(Long id);

    /**
     *
     *  功能描述: 平台配置-配置协议-增删改查 通过协议id获取主体id
     *  @author ZJQ
     *  @param  id 协议对应id
     *  @return LoanProductProtocolPO
     */
    Long getLoanProductId(Long id);

}
